package org.sky.service;

import org.sky.base.DAO;
import org.sky.model.Room;
import org.sky.model.RoomUsed;

import java.util.Date;
import java.util.List;

/**
 * Created with IntelliJ IDEA.
 * User: Administrator
 * Date: 12-10-21
 * Time: 下午6:54
 * To change this template use FileUtil | Settings | FileUtil Templates.
 */
public interface RoomUsedService extends DAO {
    /**
     * 判断时间段内K房是否被使用
     *
     * @param room      房间
     * @param startTime 使用开始时间
     * @param endTime   使用结束时间
     * @return
     */
    public boolean isBooking(Room room, Date startTime, Date endTime);

    /**
     * 计算总房费
     *
     * @param roomId 房间编号
     * @return
     */
    public double totalMoney(int roomId);

    /**
     * 某时间段房间使用情况
     *
     * @param begin 开始时间
     * @param end   结束时间
     * @return
     */
    public List<RoomUsed> findByDate(Date begin, Date end);

    /**
     * 某时间段内的收益情况
     *
     * @param begin 开始时间
     * @param end   结束时间
     * @return
     */
    public List<RoomUsed> revenueInTimes(Date begin, Date end);

    /**
     * 输出全部用户记录
     *
     * @return
     */
    public List<RoomUsed> allRoomUsed();


    /**
     * 查找房间使用记录
     *
     * @param roomId 房间编号
     * @return
     */
    public RoomUsed findRoomUsedByRoomId(int roomId);

}
